library(tidyverse)
Registered S3 methods overwritten by 'dbplyr':
method from
print.tbl_lazy
print.tbl_sql
── Attaching packages ────────────────────────────────────────────────────────────────────── tidyverse 1.3.1 ──
✓ ggplot2 3.3.5 ✓ purrr 0.3.4
✓ tibble 3.1.5 ✓ dplyr 1.0.7
✓ tidyr 1.1.4 ✓ stringr 1.4.0
✓ readr 2.0.2 ✓ forcats 0.5.1
── Conflicts ───────────────────────────────────────────────────────────────────────── tidyverse_conflicts() ──
x dplyr::filter() masks stats::filter()
x dplyr::lag() masks stats::lag()
loans <- read_csv("loans.csv")
Rows: 21268 Columns: 18
── Column specification ───────────────────────────────────────────────────────────────────────────────────────
Delimiter: ","
chr (10): term, sub_grade, home_ownership, verification_status, issue_d, loan_status, purpose, title, addr_...
dbl (8): id, member_id, loan_amnt, funded_amnt, int_rate, installment, annual_inc, total_paid
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
head(loans)
Part 1. Creat plot Write sentence
Make a scatterplot with loan amount on the x-axis and interest rate, on the y-axis again.
loans %>%
ggplot() +
geom_point(aes(x = loan_amnt, y = int_rate))

Add transparency of points to the plot you just created.
loans %>%
ggplot() +
geom_point(aes(x = loan_amnt, y = int_rate, alpha = I(0.1)))

NA
NA
Edit the plot you created to colour the points by the grade of the loan.
loans %>%
ggplot() +
geom_point(aes(x = loan_amnt, y = int_rate, colour = grade, alpha = I(0.1)))

# with the colour added, it is possible to see the distribution of correlation by broken down by grade, i.e. that the lower grades tend towards the bottom (A grades), whereas the higher grades tend towards the top (G grades)
Editing the current plot, use faceting to make a separate plot for each grade.
loans %>%
ggplot() +
geom_point(aes(x = loan_amnt, y = int_rate, colour = grade, alpha = I(0.1))) +
facet_wrap(~grade)

- Make a barplot where the height of the bars show the mean loan amount for each grade. Colour the bars by the mean interest rate in each grade.

- Explore the data. Try to create one polished graph that summarises how purpose, loan about, interest rate and grade are related. Is there one purpose that is significantly different from the others? How can you show this in your graph?

LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKYGBge3J9CmxpYnJhcnkodGlkeXZlcnNlKQpsb2FucyA8LSByZWFkX2NzdigibG9hbnMuY3N2IikKaGVhZChsb2FucykKYGBgCgpQYXJ0IDEuCkNyZWF0IHBsb3QKV3JpdGUgc2VudGVuY2UKCk1ha2UgYSBzY2F0dGVycGxvdCB3aXRoIGxvYW4gYW1vdW50IG9uIHRoZSB4LWF4aXMgYW5kIGludGVyZXN0IHJhdGUsIG9uIHRoZSB5LWF4aXMgYWdhaW4uCmBgYHtyfQpsb2FucyAlPiUKICBnZ3Bsb3QoKSArCiAgZ2VvbV9wb2ludChhZXMoeCA9IGxvYW5fYW1udCwgeSA9IGludF9yYXRlKSkKCiMgdGhlIGdyYXBoIHNob3dzIHRoYXQgdGhlcmUgaXMgYSBjb3JyZWxhdGlvbiBiZXR3ZWVuIGxvYW4gYW1vdW50IGFuZCBpbnRlcmVzdCByYXRlLCBwYXJ0aWN1bGFybHkgdGhhdCBhcyB0aGUgbG9hbiBhbW91bnRzIGJlY29tZSBoaWdoICgzMDAwMCspLCBzbyBkbyB0aGUgaW50ZXJlc3QgcmF0ZXMKYGBgCkFkZCB0cmFuc3BhcmVuY3kgb2YgcG9pbnRzIHRvIHRoZSBwbG90IHlvdSBqdXN0IGNyZWF0ZWQuCmBgYHtyfQpsb2FucyAlPiUKICBnZ3Bsb3QoKSArCiAgZ2VvbV9wb2ludChhZXMoeCA9IGxvYW5fYW1udCwgeSA9IGludF9yYXRlLCBhbHBoYSA9IEkoMC4xKSkpCgojIHRoaXMgc2hvd3MgdGhlIHNhbWUgY29ycmVsYXRpb24sIGJ1dCByZW1vdmVzIGEgbG90IG9mIHRoZSBub2lzZSAvIG92ZXJwbG90dGluZwpgYGAKRWRpdCB0aGUgcGxvdCB5b3UgY3JlYXRlZCB0byBjb2xvdXIgdGhlIHBvaW50cyBieSB0aGUgZ3JhZGUgb2YgdGhlIGxvYW4uCmBgYHtyfQpsb2FucyAlPiUKICBnZ3Bsb3QoKSArCiAgZ2VvbV9wb2ludChhZXMoeCA9IGxvYW5fYW1udCwgeSA9IGludF9yYXRlLCBjb2xvdXIgPSBncmFkZSwgYWxwaGEgPSBJKDAuMSkpKQoKIyB3aXRoIHRoZSBjb2xvdXIgYWRkZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNlZSB0aGUgZGlzdHJpYnV0aW9uIG9mIGNvcnJlbGF0aW9uIGJ5IGJyb2tlbiBkb3duIGJ5IGdyYWRlLCBpLmUuIHRoYXQgdGhlIGxvd2VyIGdyYWRlcyB0ZW5kIHRvd2FyZHMgdGhlIGJvdHRvbSAoQSBncmFkZXMpLCB3aGVyZWFzIHRoZSBoaWdoZXIgZ3JhZGVzIHRlbmQgdG93YXJkcyB0aGUgdG9wIChHIGdyYWRlcykKYGBgCkVkaXRpbmcgdGhlIGN1cnJlbnQgcGxvdCwgdXNlIGZhY2V0aW5nIHRvIG1ha2UgYSBzZXBhcmF0ZSBwbG90IGZvciBlYWNoIGdyYWRlLgpgYGB7cn0KbG9hbnMgJT4lCiAgZ2dwbG90KCkgKwogIGdlb21fcG9pbnQoYWVzKHggPSBsb2FuX2FtbnQsIHkgPSBpbnRfcmF0ZSwgY29sb3VyID0gZ3JhZGUsIGFscGhhID0gSSgwLjEpKSkgKwogIGZhY2V0X3dyYXAofmdyYWRlKQoKIyB0aGlzIG1ha2VzIHRoZSBhYm92ZSBwb2ludCBjbGVhcmVyLCBiZWNhdXNlIHRoZSBkaXN0cmlidXRpb24gaXMgYnJva2VuIGRvd24gYWNyb3NzIGluZGl2aWR1YWwgcGxvdHMKCmBgYAogCjIuIE1ha2UgYSBiYXJwbG90IHdoZXJlIHRoZSBoZWlnaHQgb2YgdGhlIGJhcnMgc2hvdyB0aGUgbWVhbiBsb2FuIGFtb3VudCBmb3IgZWFjaCBncmFkZS4gQ29sb3VyIHRoZSBiYXJzIGJ5IHRoZSBtZWFuIGludGVyZXN0IHJhdGUgaW4gZWFjaCBncmFkZS4KYGBge3J9CmxvYW5zICU+JQogIGdyb3VwX2J5KGdyYWRlKSAlPiUKICBtdXRhdGUobWVhbl9sb2FuX2FtbnQgPSBtZWFuKGxvYW5fYW1udCksCiAgICAgICAgIG1lYW5faW50X3JhdGUgPSBtZWFuKGludF9yYXRlKSkgJT4lCiAgZ2dwbG90KCkgKwogIGdlb21fY29sKGFlcyh4ID0gbWVhbl9sb2FuX2FtbnQsIHkgPSBncmFkZSwgZmlsbCA9IG1lYW5faW50X3JhdGUpKSArCiAgY29vcmRfZmxpcCgpCgpgYGAKIAogMy4gRXhwbG9yZSB0aGUgZGF0YS4gVHJ5IHRvIGNyZWF0ZSBvbmUgcG9saXNoZWQgZ3JhcGggdGhhdCBzdW1tYXJpc2VzIGhvdyBwdXJwb3NlLCBsb2FuIGFib3V0LCBpbnRlcmVzdCByYXRlIGFuZCBncmFkZSBhcmUgcmVsYXRlZC4gSXMgdGhlcmUgb25lIHB1cnBvc2UgdGhhdCBpcyBzaWduaWZpY2FudGx5IGRpZmZlcmVudCBmcm9tIHRoZSBvdGhlcnM/IEhvdyBjYW4geW91IHNob3cgdGhpcyBpbiB5b3VyIGdyYXBoPwogCmBgYHtyfQpsb2FucyAlPiUKICBnZ3Bsb3QoKSArCiAgZ2VvbV9wb2ludChhZXMoeCA9IGxvYW5fYW1udCwgeSA9IGludF9yYXRlLCBjb2xvdXIgPSBncmFkZSwgYWxwaGEgPSBJKDAuMDI1KSkpICsKICBmYWNldF93cmFwKH5wdXJwb3NlKQoKCmBgYAogCiA=